package com.shed.demo.service;

import java.util.List;
import java.util.Map;

import com.shed.base.domain.Page;
import com.shed.demo.domain.User;

public interface UserService {
	/**
	 * 用户登录方法
	 * 
	 * @param userName
	 * @param userPwd
	 * @param loginIP
	 * @return
	 */
	public Map<String, Object> doLogin(String userName, String userPwd, String logIP);

	/**
	 * 根据用户ID取用户
	 * 
	 * @param userId
	 * @return
	 */
	public User getUserByUserId(Long userId);

	/**
	 * 根据用户名取用户
	 * 
	 * @param userName
	 * @return
	 */
	public User getUserByUserName(String userName);

	/**
	 * 根据条件取用户列表
	 * 
	 * @param filter
	 * @return
	 */
	public List<User> findUser(Map<String, String> filter);

	/**
	 * 根据条件取用户分页列表
	 * 
	 * @param filterMap
	 * @param likeMap
	 * @param sortMap
	 * @param pageNo
	 * @param pageSize
	 * @return
	 */
	public Page pageUser(Map<String, String> filterMap, Map<String, String> likeMap, Map<String, String> sortMap,
			int pageNo, int pageSize);

	/**
	 * 创建用户
	 * 
	 * @param user
	 */
	public void createUser(User user);

	/**
	 * 删除用户
	 * 
	 * @param userId
	 */
	public void deleteUser(Long userId);

	/**
	 * 修改用户
	 * 
	 * @param user
	 */
	public void updateUser(User user);

	/**
	 * 修改用户密码
	 * 
	 * @param userId
	 * @param userPwd
	 */
	public void updateUserPwd(Long userId, String userPwd);
}
